package com.xy.demo.Test;

import com.xy.demo.Util.Util;
import com.xy.demo.model.User;

import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.math.BigDecimal;

public class Reflect {

    public static void main(String[] args) throws Exception {
       //Class clazz = Class.forName("com.xy.demo.model.User");
//        System.out.println("-------------所有公共构造方法---------");
//        Constructor [] conArr = clazz.getConstructors();
//        for (Constructor con: conArr
//             ) {
//            System.out.println(con);
//        }
//        System.out.println("-------------所有构造方法---------");
//        conArr = clazz.getDeclaredConstructors();
//        for (Constructor con: conArr
//        ) {
//            System.out.println(con);
//        }
//        System.out.println("-------------共有无参构造方法---------");
//        Constructor  conArrN = clazz.getConstructor(null);
//        System.out.println("conArrN"+conArrN);
//        System.out.println("-------------私有方法 并调用---------");
//
//        conArrN = clazz.getDeclaredConstructor(String.class);
//        System.out.println(conArrN);
//        conArrN.setAccessible(true);
//        conArrN.newInstance("laowang");
          //共有字段
           //Field name = clazz.getField("bName");
           //System.out.println(name);
//           Object obj = clazz.getConstructor().newInstance();
//           name.set(obj,"laozhang");
//           User user = (User)obj;
//           System.out.println("user.bName:"+user.bName);
//        User user = new User();
//        String name = user.getClass().getName();
//        int a = 1;
//        BigDecimal num1 = new BigDecimal(5.12);
//        BigDecimal num2 = new BigDecimal(15);
//        BigDecimal divideNum = Util.divide(num1,num2,4,4);
//        String result = Util.covertPercent(divideNum);
//        System.out.println(divideNum);
//        System.out.println(result);
      Long startTime =   Util.subtract(Util.startTimeForDay(),86400L);
      Long startTimeMonth =  Util.startTimeForMonth(startTime) ;
      Long endTime = Util.startTimeForDay();
        System.out.println(startTime);
        System.out.println(startTimeMonth);
        System.out.println(endTime);
    }

}
